// 引入vue和vuex并使用
import Vue from 'vue'
import Vuex from 'vuex'
Vue.use(Vuex)



// 导出新建的Store
export default new Vuex.Store({
    // state->存放数据的地方
    state:{
        city: '上海', //首页内，定位的城市信息
        index: 0  //galary页内，滚动对象的索引值
    },
    // actions->异步调取的地方
    actions:{ //dispatch在actions中被监听到
        change(ctx,city){
            // ctx->上下文环境，通过commit实现数据的派发
            ctx.commit('change',city)
        }
    },
    // mutations->更改状态的地方(例如：首页的当前城市city，就是需要更改的数据))
    mutations:{
        // 进行数据的变更
        change(state,city){
            // 将state中的city值，被传来的city值替换掉
            state.city=city
        }
    }
})